🦊Save Animated WEBPノード
日本語名:🦊アニメーションWEBPを保存ノード
https://gyazo.com/dc8111d01eaf7db90d230412b753567b
Batchサイズや長さを指定して出力された画像を全部1つのアニメーションWebPとして保存する初期からある標準ノード
ComfyUIでは標準ノードでJPEG保存できない(?)事もあり、標準の画像保存ノードである🦊画像保存ノードによる自動保存や、🦊プレビュー画像ノードの右クリックメニューから保存されるPNGファイルではサイズが大きく感じられる時などにWebP(特に多少の画質劣化を許容できるならロスレス falseにしてやると大幅にストレージ容量を小さくできます)
ただ、機能面では2025年?に入ってアップデートがかかっており、保存するWebpにワークフローが含まれるようになりました。
逆を言うと以前は含まれていませんでした…
バッチサイズや長さで指定された画像を一つにまとめてWebpにする…ということは裏を返すとバッチ1(Batch size)&長さ1(Frame Count)の画像(つまり一枚ずつ生成)時は単純なWebp保存ノードとして利用できます。
ロスレスはtrueだと劣化なしの可逆圧縮になり、圧縮率で上回るため概ねPNGの上位互換になります。
ただ、PNGに比べて劇的に小さくなるか?と言うと大抵ほんの気持ちレベルなのであまり利点を感じられないかもしれません…
品質90あたりならほぼPNGに比べて劣化がわからない程度で容量が激減するので大量生成するときにはおすすめ
品質80は拡大とかすると少し気になる人もいるかも?程度で更に容量が激減するのでこのあたりからは自分の満足できる画質と相談で。
方法は保存するときの圧縮手法で、圧縮に時間をかけてもより圧縮するか、多少画質を犠牲にしても素早く圧縮するかのオプションです。(ざっくり書くと、より複雑に計算して画質に対する圧縮速度を高めたり、簡易計算で早めたりします)
defaultは標準速度・標準画質
firstestは低画質・高速保存
slowestは高画質・低速保存
正直slowestの速度で問題になることはほぼない(少なくともAIの画像生成時間に比較すれば違いがわからないレベル)のでslowestにしておくとベターだと思います。
バッチをどうしても使いたい場合、ちょっと面倒ですが🦊バッチから画像を取得ノードでタコ足配線をすれば一応分配は可能です…
正直画像を保存ノードのWebp版の標準ノードはほしい…morisoba65536.icon
ほぼ標準ノードに近い?🦊ComfyUI-Impact-Packに含まれるImage Batch to Image Listノードで解決した、これを通せばバッチ指定した画像を一枚ずつwebpで保存可能です。
Image Batch to Image Listノードを使ったwebpバッチの個別保存例
サンプルWorkflowは🦊SDXL+Hyper-SDXLのHyper-SDXL-12steps-CFG-lora(CFG有効12ステップ版)を使用、バッチサイズ4で4枚画像を同時に作るがImage Batch to Image Listノードを通すことで(単一ファイルの)アニメーションwebpにバッチの画像をまとめられないようになり、4枚のwebp画像に保存できている。
https://gyazo.com/1dfc5c70036ff9fcdbae13efd5f85eaa
Example-of-saving-webp-files-Image_Batch_to_Image_List-Node-Workflow.json
todo:フォーマットの話とか保存の仕方の話とか混ぜすぎてる気がするので、出来ればそれぞれ別ページに切り分ける